package a.f.a;

import a.a.kb;
import a.c.*;
import a.d.n;
import a.d.p;
import a.d.t;
import a.f.mb;
import a.f.o;
import a.f.wc;
import a.f.zc;
import a.i.db;

import java.util.Comparator;
import java.util.HashMap;

class d
  extends mb
{
  public static final String w = "NODE_SHAPE_DP";
  public static final String x = "NODE_TO_LABEL_BOXES";
  public static final String y = "EDGE_TO_MULTI_EDGES";
  public static final byte z = 0;
  public static final byte A = 1;
  private static final double B = 10.0D;
  private static final double C = 100.0D;
  private int D = 10;
  private int E = 10;
  private int F = 1;
  private o G;
  private HashMap H;
  private k I;
  private k J;
  private k K;
  private byte L = 0;
  private byte M = 1;
  private static final byte N = 0;
  private static final byte O = 1;
  private static final byte P = 2;
  
  public int a()
  {
    return this.D;
  }
  
  public void a(int paramInt)
  {
    this.D = paramInt;
  }
  
  public int s()
  {
    return this.E;
  }
  
  public void b(int paramInt)
  {
    this.E = paramInt;
  }
  
  private z a(a.c.e parame)
  {
    if (e.M == 0) {
      if (this.J == null) {
        return null;
      }
    }
    return (z)this.J.get(parame);
  }
  
  private z a(a.c.d paramd)
  {
    if (e.M == 0) {
      if (this.K == null) {
        return null;
      }
    }
    return (z)this.K.get(paramd);
  }
  
  private boolean b(a.c.e parame)
  {
    int i = e.M;
    if ((i != 0) || (this.I != null)) {
      if (i != 0) {
        break label33;
      }
    }
    label33:
    return this.I.getInt(parame) == 0;
  }
  
  private boolean c(a.c.e parame)
  {
    int i = e.M;
    if ((i != 0) || (this.I != null)) {
      if (i != 0) {}
    }
    return this.I.getInt(parame) == 1;
  }
  
  public void a(o paramo)
  {
    int i = e.M;
    boolean bool = e.L;
    this.H = new HashMap();
    this.G = paramo;
    this.I = paramo.c("NODE_SHAPE_DP");
    this.J = paramo.c("NODE_TO_LABEL_BOXES");
    this.K = paramo.c("EDGE_TO_MULTI_EDGES");
    this.E = Math.max(1, this.E);
    this.F = Math.max(1, this.F);
    a.c.e locale = u();
    ab localab = kb.a(paramo, locale);
    Object localObject1 = localab.l();
    do
    {
      if (!((a.c.m)localObject1).e()) {
        break;
      }
      localObject2 = ((a.c.m)localObject1).a();
      wc.a(paramo.b((a.c.d)localObject2));
      ((a.c.m)localObject1).f();
    } while (!bool);
    localObject1 = new bb(paramo.v());
    Object localObject2 = paramo.B();
    c(locale, (x)localObject2);
    x localx1 = paramo.B();
    a(locale, localx1);
    x localx2 = paramo.B();
    a(localx2);
    ((bb)localObject1).a(new f_((x)localObject2, localx1, localx2));
    z localz = t();
    x localx3 = paramo.B();
    Object localObject3 = ((bb)localObject1).l();
    Object localObject4;
    do
    {
      if (!((a.c.w)localObject3).e()) {
        break;
      }
      localObject4 = ((a.c.w)localObject3).d();
      if (i == 0)
      {
        if (localObject4 != locale)
        {
          a.c.d locald = f((a.c.e)localObject4);
          a(locald, localx3, localz);
        }
        ((a.c.w)localObject3).f();
      }
    } while (!bool);
    localObject3 = localab.l();
    do
    {
      if (!((a.c.m)localObject3).e()) {
        break;
      }
      localObject4 = ((a.c.m)localObject3).a();
      paramo.e((a.c.d)localObject4);
      wc.a(paramo.b((a.c.d)localObject4));
      ((a.c.m)localObject3).f();
      if (i != 0) {
        break label379;
      }
      if (bool) {
        break label376;
      }
    } while (!bool);
    paramo.a(localx3);
    paramo.a(localx2);
    paramo.a((x)localObject2);
    if (i == 0) {
      paramo.a(localx1);
    }
    label376:
    label379:
    if ((i != 0) || (q.n))
    {
      if (i == 0) {}
      e.L = !bool;
    }
    if (q.o)
    {
      i++;
      e.M = i;
    }
  }
  
  private void a(x paramx)
  {
    int k = e.M;
    boolean bool = e.L;
    a.c.w localw1 = this.G.v();
    label240:
    do
    {
      if (!localw1.e()) {
        break;
      }
      a.c.e locale = localw1.d();
      if (locale.e() > 4)
      {
        a.d.w localw2 = this.G.o(locale);
        a.d.w localw3 = locale.d() > 0 ? this.G.o(locale.i().e()) : null;
        if (k == 0) {}
        double d = localw3 == null ? 3.141592653589793D : a(localw2, localw3);
        Comparator local0 = new Comparator()
        {
          private final a.d.w val$nCenter;
          private final double val$nAngle;
          
          public int compare(Object paramAnonymousObject1, Object paramAnonymousObject2)
          {
            int i = e.M;
            a.d.w localw1 = d.this.G.o(((a.c.d)paramAnonymousObject1).f());
            a.d.w localw2 = d.this.G.o(((a.c.d)paramAnonymousObject2).f());
            double d1 = d.a(this.val$nCenter, localw1);
            if (i == 0) {
              if (d1 < this.val$nAngle) {
                d1 += 6.283185307179586D;
              }
            }
            double d2 = d.a(this.val$nCenter, localw2);
            if (i == 0) {
              if (d2 < this.val$nAngle) {
                d2 += 6.283185307179586D;
              }
            }
            if (i == 0) {}
            if (i == 0) {}
            return d1 > d2 ? -1 : d1 < d2 ? 1 : 0;
          }
        };
        ab localab = new ab(locale.n());
        localab.a(local0);
        bb localbb = new bb();
        a.c.m localm = localab.l();
        do
        {
          do
          {
            if (!localm.e()) {
              break;
            }
            localbb.add(localm.a().f());
            localm.f();
            if (k != 0) {
              break label323;
            }
            if (bool) {
              break label321;
            }
          } while (!bool);
        } while (k != 0);
        int i = 1;
        do
        {
          do
          {
            if (localbb.isEmpty()) {
              break;
            }
            break label240;
            int j = 1;
            if (bool) {
              break label316;
            }
            a.c.w localw4 = localbb.l();
            do
            {
              if (!localw4.e()) {
                break label297;
              }
              if (bool) {
                break;
              }
              if (j != 0) {
                paramx.a(localbb.b(localw4), i);
              }
              if (k == 0) {}
              j = j == 0 ? 1 : 0;
              localw4.f();
            } while (!bool);
            i++;
          } while (k != 0);
        } while (!bool);
      }
      if (k == 0) {
        localw1.f();
      }
    } while (!bool);
    label297:
    label316:
    label321:
    label323:
    return;
  }
  
  private static double a(a.d.w paramw1, a.d.w paramw2)
  {
    double d1 = paramw2.a - paramw1.a;
    double d2 = paramw2.b - paramw1.b;
    return Math.atan2(d2, d1);
  }
  
  private a.d.w a(n paramn)
  {
    return a.d.w.d(paramn.d(), paramn.e());
  }
  
  private void a(a.c.d paramd, x paramx, z paramz)
  {
    int i = e.M;
    boolean bool = e.L;
    a.c.e locale = paramd.f();
    x localx = db.a(new boolean[this.G.k()]);
    bb localbb = e(locale);
    Object localObject = localbb.l();
    do
    {
      while (!bool)
      {
        if (!((a.c.w)localObject).e()) {
          break;
        }
        localx.a(((a.c.w)localObject).d(), true);
        ((a.c.w)localObject).f();
      }
    } while (i != 0);
    localObject = new n(this.G.s(paramd), this.G.r(paramd));
    t localt = a((n)localObject, localbb, this.E);
    z[] arrayOfz = a(localx, localt, paramz);
    if (((n)localObject).h() > 10.0D) {
      a(localbb.l(), paramx);
    }
    label286:
    while (i != 0)
    {
      a.d.w localw1 = ((n)localObject).d();
      a.d.w localw2 = a((n)localObject);
      wc.b(this.G, localbb.l(), localw2.a() - localw1.a(), localw2.b() - localw1.b());
      if (i == 0)
      {
        if (a(paramd, arrayOfz))
        {
          localObject = new n(a((n)localObject), ((n)localObject).e());
          if (i != 0) {
            break label286;
          }
          if (!bool) {
            break;
          }
        }
        localObject = new n(((n)localObject).d(), a((n)localObject));
        b(localbb.l(), paramx);
      }
      if (!bool) {
        break;
      }
    }
  }
  
  private z[] a(x paramx, t paramt, z paramz)
  {
    int i = e.M;
    boolean bool4 = e.L;
    z[] arrayOfz = new z[2];
    arrayOfz[this.L] = new z();
    arrayOfz[this.M] = new z();
    y localy = paramz.h();
    if (localy.e()) {}
    label531:
    label611:
    label753:
    label762:
    while (i != 0)
    {
      b_ localb_ = (b_)localy.j();
      t localt1;
      if (i == 0)
      {
        if (localb_.g())
        {
          a.c.e locale1 = (a.c.e)localb_.j();
          boolean bool2 = paramx.getBool(locale1);
          if (i == 0) {
            if (bool2)
            {
              localObject = this.G.v(locale1);
              localt1 = a((t)localObject, this.E);
              localb_.a(localt1);
              localb_.a((t)localObject);
              localb_.a(bool2);
              if (i != 0) {
                break label792;
              }
              if (!t.a(localt1, paramt)) {
                break label783;
              }
              arrayOfz[this.L].add(localb_);
              arrayOfz[this.M].add(localb_);
              if (i != 0) {
                break label792;
              }
              if (!bool4) {
                break label783;
              }
            }
          }
          if (i == 0) {
            if (localb_.d())
            {
              localObject = this.G.v(locale1);
              localb_.a((p)localObject);
              localb_.a((t)localObject);
              localb_.a(false);
              if (i != 0) {
                break label792;
              }
              if (!t.a((t)localObject, paramt)) {
                break label783;
              }
              arrayOfz[this.M].add(localb_);
              if (i != 0) {
                break label792;
              }
              if (!bool4) {
                break label783;
              }
            }
          }
          if (i != 0) {
            break label792;
          }
          if (!t.a(localb_.a(), paramt)) {
            break label783;
          }
          arrayOfz[this.M].add(localb_);
          if (i != 0) {
            break label792;
          }
          if (!bool4) {
            break label783;
          }
        }
        if (i != 0) {}
      }
      else if (localb_.i())
      {
        boolean bool1 = paramx.getBool(localb_.j());
        if ((i != 0) || (!bool1))
        {
          if (i != 0) {
            break label531;
          }
          if (!localb_.d()) {}
        }
        else
        {
          a.c.e locale2 = (a.c.e)localb_.j();
          localObject = this.G.o(locale2);
          localt1 = localb_.f();
          t localt2 = new t(((a.d.w)localObject).a() + localt1.d(), ((a.d.w)localObject).b() + localt1.e(), localt1.b(), localt1.c());
          localb_.a(localt2);
          localb_.a(bool1);
          if (i != 0) {
            break label792;
          }
          if (!t.a(localt2, paramt)) {
            break label783;
          }
          if (i == 0)
          {
            if (bool1) {
              arrayOfz[this.L].add(localb_);
            }
            arrayOfz[this.M].add(localb_);
          }
          if (i != 0) {
            break label792;
          }
          if (!bool4) {
            break label783;
          }
        }
        if (i != 0) {
          break label792;
        }
        if (!t.a(localb_.a(), paramt)) {
          break label783;
        }
        arrayOfz[this.M].add(localb_);
        if (i != 0) {
          break label792;
        }
        if (!bool4) {
          break label783;
        }
      }
      a.c.d locald = (a.c.d)localb_.j();
      if (i == 0) {
        if (!paramx.getBool(locald.e())) {
          if (i != 0) {
            break label611;
          }
        }
      }
      boolean bool3 = paramx.getBool(locald.f());
      if (i == 0) {
        if (!bool3)
        {
          if (i != 0) {
            break label762;
          }
          if (!localb_.d()) {
            break label753;
          }
        }
      }
      Object localObject = (i != 0) || (localb_.b()) ? localb_.c().a(this.G) : b(locald);
      localb_.a((p)localObject);
      localb_.a(bool3);
      if (i == 0)
      {
        if (t.a(((n)localObject).a(), paramt))
        {
          if (i == 0)
          {
            if (bool3) {
              arrayOfz[this.L].add(localb_);
            }
            arrayOfz[this.M].add(localb_);
          }
          if (i != 0) {
            break label792;
          }
          if (bool4)
          {
            if (i != 0) {
              break label792;
            }
            if (t.a(localb_.a(), paramt)) {
              arrayOfz[this.M].add(localb_);
            }
          }
        }
        localy.f();
      }
      if (!bool4) {
        break;
      }
    }
    label783:
    label792:
    return arrayOfz;
  }
  
  private t a(n paramn, bb parambb, double paramDouble)
  {
    int i = e.M;
    boolean bool = e.L;
    double d1 = paramn.e().a() - paramn.d().a();
    double d2 = paramn.e().b() - paramn.d().b();
    double d3 = 1.7976931348623157E+308D;
    double d4 = 1.7976931348623157E+308D;
    double d5 = -1.797693134862316E+308D;
    double d6 = -1.797693134862316E+308D;
    a.c.w localw = parambb.l();
    label209:
    do
    {
      if (!localw.e()) {
        break;
      }
      a.c.e locale = localw.d();
      zc localzc = this.G.k(locale);
      if (i == 0)
      {
        if (d1 > 0.0D)
        {
          d3 = Math.min(d3, localzc.a());
          d5 = Math.max(d5, localzc.a() + localzc.c() + d1);
          if (i != 0) {
            break label209;
          }
          if (!bool) {}
        }
        else
        {
          d3 = Math.min(d3, localzc.a() + d1);
        }
      }
      else {
        d5 = Math.max(d5, localzc.a() + localzc.c());
      }
      if (i == 0)
      {
        if (d2 > 0.0D)
        {
          d4 = Math.min(d4, localzc.b());
          d6 = Math.max(d6, localzc.b() + localzc.d() + d2);
          if (i != 0) {
            continue;
          }
          if (!bool) {}
        }
        else
        {
          d4 = Math.min(d4, localzc.b() + d2);
        }
      }
      else {
        d6 = Math.max(d6, localzc.b() + localzc.d());
      }
      localw.f();
    } while (!bool);
    return new t(d3 - paramDouble, d4 - paramDouble, d5 - d3 + 2.0D * paramDouble, d6 - d4 + 2.0D * paramDouble);
  }
  
  private t a(o paramo, a.c.w paramw, double paramDouble)
  {
    int i = e.M;
    boolean bool = e.L;
    if (!paramw.e()) {
      return new t(0.0D, 0.0D, -1.0D, -1.0D);
    }
    double d1 = 1.7976931348623157E+308D;
    double d2 = 1.7976931348623157E+308D;
    double d3 = -1.797693134862316E+308D;
    double d4 = -1.797693134862316E+308D;
    label335:
    label337:
    do
    {
      do
      {
        if (!paramw.e()) {
          break label340;
        }
        a.c.e locale = paramw.d();
        zc localzc = paramo.k(locale);
        d1 = Math.min(d1, localzc.a());
        d2 = Math.min(d2, localzc.b());
        d3 = Math.max(d3, localzc.a() + localzc.c());
        d4 = Math.max(d4, localzc.b() + localzc.d());
        z localz = a(locale);
        if (((i != 0) || (localz != null)) && (!localz.isEmpty()))
        {
          a.d.w localw = this.G.o(locale);
          y localy = localz.h();
          do
          {
            if (!localy.e()) {
              break;
            }
            t localt = (t)localy.j();
            d1 = Math.min(d1, localw.a() + localt.d());
            d2 = Math.min(d2, localw.b() + localt.e());
            d3 = Math.max(d3, localw.a() + localt.d() + localt.b());
            d4 = Math.max(d4, localw.b() + localt.e() + localt.c());
            localy.f();
            if (i != 0) {
              break label337;
            }
            if (bool) {
              break label335;
            }
          } while (!bool);
        }
      } while (i != 0);
      paramw.f();
    } while (!bool);
    label340:
    return new t(d1 - paramDouble, d2 - paramDouble, d3 - d1 + 2.0D * paramDouble, d4 - d2 + 2.0D * paramDouble);
  }
  
  private void a(a.c.w paramw, x paramx)
  {
    boolean bool = e.L;
    do
    {
      if (!paramw.e()) {
        break;
      }
      a.c.e locale = paramw.d();
      paramx.a(locale, this.G.o(locale));
      paramw.f();
    } while (!bool);
  }
  
  private void b(a.c.w paramw, x paramx)
  {
    boolean bool = e.L;
    do
    {
      if (!paramw.e()) {
        break;
      }
      a.c.e locale = paramw.d();
      this.G.a(locale, (a.d.w)paramx.get(locale));
      paramw.f();
    } while (!bool);
  }
  
  private double d(a.c.e parame)
  {
    return Math.max(this.G.s(parame), this.G.t(parame)) * 0.5D;
  }
  
  private byte a(a.c.d paramd, x paramx)
  {
    int i = e.M;
    if (i == 0) {
      if (paramx.getBool(paramd.e()))
      {
        if (i != 0) {
          break label50;
        }
        if (paramx.getBool(paramd.f())) {
          return 0;
        }
      }
    }
    label50:
    if (i == 0) {
      if (!paramx.getBool(paramd.e()))
      {
        if (i != 0) {
          break label77;
        }
        if (!paramx.getBool(paramd.f())) {
          return 1;
        }
      }
    }
    label77:
    return 2;
  }
  
  private boolean a(a.c.d paramd, z[] paramArrayOfz)
  {
    int i = e.M;
    boolean bool = e.L;
    double d = a.d.w.a(this.G.r(paramd), this.G.s(paramd));
    if ((i != 0) || (d < this.D)) {
      return false;
    }
    z localz = a(paramd);
    if ((i != 0) || (localz != null))
    {
      y localy = localz.h();
      do
      {
        if (!localy.e()) {
          break;
        }
        c_ localc_ = (c_)localy.j();
        d = localc_.a(this.G).h();
        if (bool) {
          break label146;
        }
        if (d < this.D) {
          return false;
        }
        localy.f();
      } while (!bool);
    }
    label146:
    return (i != 0) || (!a(paramArrayOfz, paramd));
  }
  
  private static a.d.w[] a(t paramt, n paramn)
  {
    int j = e.M;
    boolean bool = e.L;
    a.d.w localw1 = paramt.f();
    a.d.w localw2 = new a.d.w(localw1.a, localw1.b + paramt.c());
    a.d.w localw3 = new a.d.w(localw2.a + paramt.b(), localw2.b);
    a.d.w localw4 = new a.d.w(localw3.a, localw1.b);
    z localz = new z();
    n localn1 = new n(localw1, localw2);
    a.d.w localw5 = n.a(localn1, paramn);
    if (localw5 != null) {
      localz.add(localw5);
    }
    n localn2 = new n(localw4, localw3);
    if (j == 0)
    {
      localw5 = n.a(localn2, paramn);
      if (localw5 != null) {
        localz.add(localw5);
      }
    }
    n localn3 = new n(localw1, localw4);
    if (j == 0)
    {
      localw5 = n.a(localn3, paramn);
      if (localw5 != null) {
        localz.add(localw5);
      }
    }
    n localn4 = new n(localw2, localw3);
    if (j == 0)
    {
      localw5 = n.a(localn4, paramn);
      if (localw5 != null) {
        localz.add(localw5);
      }
    }
    if (j == 0) {
      if (paramn.b(localw1)) {
        localz.add(localw1);
      }
    }
    if (j == 0) {
      if (paramn.b(localw4)) {
        localz.add(localw4);
      }
    }
    if (j == 0) {
      if (paramn.b(localw2)) {
        localz.add(localw2);
      }
    }
    if (j == 0) {
      if (paramn.b(localw3)) {
        localz.add(localw3);
      }
    }
    if (j == 0) {
      if (localz.isEmpty()) {
        return null;
      }
    }
    a.d.w[] arrayOfw = new a.d.w[localz.size()];
    int i = 0;
    y localy = localz.h();
    do
    {
      while (!bool)
      {
        if (!localy.e()) {
          break;
        }
        if ((j == 0) && (bool)) {
          break label408;
        }
        arrayOfw[(i++)] = ((a.d.w)localy.j());
        localy.f();
      }
    } while (j != 0);
    label408:
    return arrayOfw;
  }
  
  private static double a(t paramt1, t paramt2)
  {
    if (t.a(paramt1, paramt2)) {
      return 0.0D;
    }
    a.d.w localw1 = new a.d.w(paramt1.d() + paramt1.b() * 0.5D, paramt1.e() + paramt1.c() * 0.5D);
    a.d.w localw2 = new a.d.w(paramt2.d() + paramt2.b() * 0.5D, paramt2.e() + paramt2.c() * 0.5D);
    n localn = new n(localw1, localw2);
    a.d.w localw3 = a(paramt1, localn)[0];
    a.d.w localw4 = a(paramt2, localn)[0];
    return a.d.w.a(localw3, localw4);
  }
  
  private static double a(t paramt, a.d.w paramw)
  {
    if (e.M == 0) {
      if (paramt.a(paramw)) {
        return 0.0D;
      }
    }
    a.d.w localw1 = paramt.f();
    a.d.w localw2 = new a.d.w(localw1.a, localw1.b + paramt.c());
    a.d.w localw3 = new a.d.w(localw2.a + paramt.b(), localw2.b);
    a.d.w localw4 = new a.d.w(localw3.a, localw1.b);
    n localn1 = new n(localw1, localw2);
    double d = a(localn1, paramw);
    n localn2 = new n(localw4, localw3);
    d = Math.min(d, a(localn2, paramw));
    n localn3 = new n(localw1, localw4);
    d = Math.min(d, a(localn3, paramw));
    n localn4 = new n(localw2, localw3);
    d = Math.min(d, a(localn4, paramw));
    return d;
  }
  
  private boolean a(b_ paramb_1, b_ paramb_2)
  {
    int i = e.M;
    a.c.e locale1 = (a.c.e)paramb_1.j();
    a.c.e locale2 = (a.c.e)paramb_2.j();
    if (i == 0) {
      if (!t.a(paramb_1.a(), paramb_2.a())) {
        return false;
      }
    }
    if (i == 0) {
      if (b(locale1))
      {
        if (i != 0) {
          break label77;
        }
        if (b(locale2)) {
          return true;
        }
      }
    }
    label77:
    if (i == 0) {
      if (c(locale1))
      {
        if (i != 0) {
          break label192;
        }
        if (c(locale2))
        {
          double d1 = Math.max(paramb_1.a().b(), paramb_1.a().c()) * 0.5D;
          d2 = Math.max(paramb_2.a().b(), paramb_2.a().c()) * 0.5D;
          if (i == 0) {}
          return a.d.w.a(this.G.o(locale1), this.G.o(locale2)) - d1 - d2 < 0.0D;
        }
      }
    }
    label192:
    b_ localb_1 = b(locale1) ? paramb_1 : paramb_2;
    b_ localb_2 = c(locale1) ? paramb_1 : paramb_2;
    double d2 = localb_1.a().b();
    double d3 = localb_1.a().c();
    double d4 = Math.sqrt(d3 * d3 + d2 * d2) * 0.5D;
    double d5 = Math.max(localb_2.a().b(), localb_2.a().c()) * 0.5D;
    if (i == 0) {}
    return a.d.w.a(this.G.o(locale1), this.G.o(locale2)) - d5 - d4 < 0.0D;
  }
  
  private boolean a(a.c.e parame, n paramn)
  {
    int i = e.M;
    if ((i != 0) || (!t.a(this.G.v(parame), paramn.a()))) {
      return false;
    }
    double d1 = 0.0D;
    if (i == 0) {
      if (c(parame))
      {
        d1 = a(paramn, this.G.o(parame)) - d(parame) - this.F;
        if (i != 0) {
          break label127;
        }
        if (!e.L) {
          break label124;
        }
      }
    }
    double d2 = a.d.w.a(this.G.o(parame), this.G.r(parame));
    d1 = a(paramn, this.G.o(parame)) - d2 - this.F;
    label124:
    label127:
    if (i == 0) {}
    return d1 < 0.0D;
  }
  
  private static t a(t paramt, double paramDouble)
  {
    a.d.w localw = paramt.f();
    return new t(localw.a() - paramDouble, localw.b() - paramDouble, paramt.b() + 2.0D * paramDouble, paramt.c() + 2.0D * paramDouble);
  }
  
  private boolean a(a.c.e parame1, a.c.e parame2)
  {
    int i = e.M;
    if (i == 0) {
      if (c(parame1))
      {
        if (i != 0) {
          break label89;
        }
        if (c(parame2))
        {
          double d1 = a.d.w.a(this.G.o(parame1), this.G.o(parame2)) - d(parame1) - d(parame2);
          if (i == 0) {}
          return d1 > this.E;
        }
      }
    }
    label89:
    if (i == 0) {
      if (b(parame1))
      {
        if (i != 0) {
          break label158;
        }
        if (b(parame2))
        {
          localObject = a(this.G.v(parame1), this.E);
          if (i == 0) {}
          return !t.a((t)localObject, this.G.v(parame2));
        }
      }
    }
    label158:
    Object localObject = b(parame1) ? parame1 : parame2;
    a.c.e locale = c(parame1) ? parame1 : parame2;
    double d2 = a.d.w.a(this.G.o((a.c.e)localObject), this.G.r((a.c.e)localObject));
    double d3 = a.d.w.a(this.G.o(parame1), this.G.o(parame2)) - d2 - d(locale);
    if (i == 0) {}
    return d3 > this.E;
  }
  
  private double b(a.c.e parame1, a.c.e parame2)
  {
    int i = e.M;
    boolean bool = e.L;
    double d = 0.0D;
    if (i == 0) {
      if (c(parame1))
      {
        if (i != 0) {
          break label85;
        }
        if (c(parame2))
        {
          if (i != 0) {
            break label200;
          }
          d = a.d.w.a(this.G.o(parame1), this.G.o(parame2)) - d(parame1) - d(parame2);
          if (!bool) {
            break label195;
          }
        }
      }
    }
    label85:
    if (i == 0) {
      if (b(parame1))
      {
        if (i != 0) {
          break label141;
        }
        if (b(parame2))
        {
          if (i != 0) {
            break label200;
          }
          d = a(this.G.v(parame1), this.G.v(parame2));
          if (!bool) {
            break label195;
          }
        }
      }
    }
    label141:
    a.c.e locale1 = b(parame1) ? parame1 : parame2;
    a.c.e locale2 = c(parame1) ? parame1 : parame2;
    d = a(this.G.v(locale1), this.G.o(locale2)) - d(locale2);
    label195:
    label200:
    return Math.max(0.0D, d);
  }
  
  private static double a(n paramn1, n paramn2)
  {
    if (e.M == 0) {
      if (n.a(paramn1, paramn2) != null) {
        return 0.0D;
      }
    }
    double d = a(paramn1, paramn2.d());
    d = Math.min(d, a(paramn1, paramn2.e()));
    d = Math.min(d, a(paramn2, paramn1.d()));
    d = Math.min(d, a(paramn2, paramn1.e()));
    return d;
  }
  
  private static double c(t paramt, n paramn)
  {
    if (paramn.a(paramt)) {
      return 0.0D;
    }
    a.d.w localw1 = paramt.f();
    a.d.w localw2 = new a.d.w(localw1.a, localw1.b + paramt.c());
    a.d.w localw3 = new a.d.w(localw2.a + paramt.b(), localw2.b);
    a.d.w localw4 = new a.d.w(localw3.a, localw1.b);
    n localn1 = new n(localw1, localw2);
    n localn2 = new n(localw4, localw3);
    n localn3 = new n(localw1, localw4);
    n localn4 = new n(localw2, localw3);
    double d = a(paramn, localn1);
    d = Math.min(d, a(paramn, localn2));
    d = Math.min(d, a(paramn, localn3));
    d = Math.min(d, a(paramn, localn4));
    return d;
  }
  
  private double a(a.c.e parame, a.c.d paramd)
  {
    int i = e.M;
    double d = 0.0D;
    n localn = b(paramd);
    if (i == 0) {
      if (c(parame))
      {
        if (i != 0) {
          break label77;
        }
        d = a(localn, this.G.o(parame)) - d(parame);
        if (!e.L) {
          break label72;
        }
      }
    }
    d = c(this.G.v(parame), localn);
    label72:
    label77:
    return Math.max(0.0D, d);
  }
  
  private boolean c(b_ paramb_1, b_ paramb_2)
  {
    int i = e.M;
    a.c.e locale = (a.c.e)paramb_1.j();
    t localt = paramb_2.a();
    if (i == 0) {
      if (!t.a(paramb_1.f(), localt)) {
        return false;
      }
    }
    if ((i != 0) || (b(locale))) {
      return true;
    }
    double d1 = Math.sqrt(localt.c() * localt.c() + localt.b() * localt.b()) * 0.5D;
    double d2 = Math.max(paramb_1.f().b(), paramb_1.f().c()) * 0.5D;
    a.d.w localw = new a.d.w(localt.d() + localt.b() * 0.5D, localt.e() + localt.c() * 0.5D);
    if (i == 0) {}
    return a.d.w.a(this.G.o(locale), localw) - d2 - d1 < 0.0D;
  }
  
  private boolean e(b_ paramb_1, b_ paramb_2)
  {
    int j = e.M;
    if (j == 0) {}
    int i = paramb_1.d() ? 1 : 0;
    if (j == 0) {}
    i += (paramb_2.d() ? 1 : 0);
    if (j == 0) {}
    return i == 1;
  }
  
  private static double a(n paramn, a.d.w paramw)
  {
    int i = e.M;
    double d1 = paramn.d().a;
    double d2 = paramn.e().a;
    double d3 = paramn.d().b;
    double d4 = paramn.e().b;
    double d5 = paramw.a();
    double d6 = paramw.b();
    d2 -= d1;
    d4 -= d3;
    d5 -= d1;
    d6 -= d3;
    double d7 = 0.0D;
    double d8 = d5 * d2 + d6 * d4;
    if (i == 0) {
      if (d8 > 0.0D)
      {
        d5 = d2 - d5;
        d6 = d4 - d6;
        d8 = d5 * d2 + d6 * d4;
        if (i == 0) {
          if (d8 <= 0.0D)
          {
            if (i != 0) {
              break label192;
            }
            d7 = 0.0D;
            if (!e.L) {
              break label178;
            }
          }
        }
        d7 = d8 * d8 / (d2 * d2 + d4 * d4);
      }
    }
    label178:
    label192:
    double d9 = d5 * d5 + d6 * d6 - d7;
    if (i == 0) {
      if (d9 < 0.0D) {
        return 0.0D;
      }
    }
    return Math.sqrt(d9);
  }
  
  private boolean a(z[] paramArrayOfz, a.c.d paramd)
  {
    int i = e.M;
    boolean bool = e.L;
    double d1 = 1.7976931348623157E+308D;
    double d2 = 1.7976931348623157E+308D;
    double d3 = -1.797693134862316E+308D;
    double d4 = -1.797693134862316E+308D;
    Object localObject1 = paramArrayOfz[this.L].h();
    if (((y)localObject1).e()) {}
    Object localObject4;
    label270:
    label498:
    label507:
    while (i != 0)
    {
      localObject2 = (b_)((y)localObject1).j();
      if (i == 0)
      {
        if (((b_)localObject2).g())
        {
          localObject3 = (a.c.e)((b_)localObject2).j();
          localObject4 = this.G.v((a.c.e)localObject3);
          localt1 = a((t)localObject4, this.E);
          ((b_)localObject2).a((t)localObject4);
          ((b_)localObject2).a(localt1);
          d1 = Math.min(d1, localt1.d());
          d2 = Math.min(d2, localt1.e());
          d3 = Math.max(d3, localt1.d() + localt1.b());
          d4 = Math.max(d4, localt1.e() + localt1.c());
          if (i != 0) {
            break label507;
          }
          if (!bool) {
            break label498;
          }
        }
        if (i != 0) {}
      }
      else if (((b_)localObject2).h())
      {
        localObject3 = (a.c.d)((b_)localObject2).j();
        if ((i != 0) || (((b_)localObject2).b()))
        {
          localObject4 = ((b_)localObject2).c().a(this.G);
          if (i != 0) {
            break label270;
          }
          if (!bool) {}
        }
        else
        {
          localObject4 = b((a.c.d)localObject3);
        }
        if (i == 0)
        {
          ((b_)localObject2).a((p)localObject4);
          if (localObject3 != paramd) {}
        }
        else
        {
          if (i != 0) {
            break label507;
          }
          if (!((b_)localObject2).b()) {
            break label498;
          }
        }
        localt1 = ((n)localObject4).a();
        d1 = Math.min(d1, localt1.d());
        d2 = Math.min(d2, localt1.e());
        d3 = Math.max(d3, localt1.d() + localt1.b());
        d4 = Math.max(d4, localt1.e() + localt1.c());
        if (i != 0) {
          break label507;
        }
        if (!bool) {
          break label498;
        }
      }
      localObject3 = (a.c.e)((b_)localObject2).j();
      localObject4 = this.G.o((a.c.e)localObject3);
      t localt1 = ((b_)localObject2).f();
      t localt2 = new t(((a.d.w)localObject4).a() + localt1.d(), ((a.d.w)localObject4).b() + localt1.e(), localt1.b(), localt1.c());
      ((b_)localObject2).a(localt2);
      d1 = Math.min(d1, localt2.d());
      d2 = Math.min(d2, localt2.e());
      d3 = Math.max(d3, localt2.d() + localt2.b());
      d4 = Math.max(d4, localt2.e() + localt2.c());
      ((y)localObject1).f();
      if (!bool) {
        break;
      }
    }
    localObject1 = new t(d1, d2, d3 - d1, d4 - d2);
    Object localObject2 = new z();
    Object localObject3 = paramArrayOfz[this.M].h();
    if (((y)localObject3).e()) {}
    label635:
    while (i != 0)
    {
      localObject4 = (b_)((y)localObject3).j();
      if (i == 0) {
        if (((b_)localObject4).d())
        {
          ((z)localObject2).add(localObject4);
          if (i != 0) {
            break label644;
          }
          if (!bool) {
            break label635;
          }
        }
      }
      if (i == 0)
      {
        if (t.a(((b_)localObject4).a(), (t)localObject1)) {
          ((z)localObject2).add(localObject4);
        }
        ((y)localObject3).f();
      }
      if (!bool) {
        break;
      }
    }
    label644:
    localObject3 = new e_(false);
    a.d.m.a((z)localObject2, (m.g_)localObject3);
    return ((e_)localObject3).a();
  }
  
  private z t()
  {
    int j = e.M;
    boolean bool = e.L;
    z localz1 = new z();
    int i = 1;
    Object localObject1 = this.G.v();
    Object localObject2;
    z localz2;
    Object localObject3;
    Object localObject4;
    Object localObject5;
    label257:
    label259:
    do
    {
      do
      {
        if (!((a.c.w)localObject1).e()) {
          break label262;
        }
        localObject2 = ((a.c.w)localObject1).d();
        if (j == 0)
        {
          localz1.add(new b_(localObject2, i++, this.G.v((a.c.e)localObject2), this.G.v((a.c.e)localObject2), (byte)0));
          if (bool) {
            break label263;
          }
        }
        localz2 = a((a.c.e)localObject2);
        if (((j != 0) || (localz2 != null)) && (!localz2.isEmpty()))
        {
          localObject3 = this.G.o((a.c.e)localObject2);
          localObject4 = localz2.h();
          do
          {
            if (!((y)localObject4).e()) {
              break;
            }
            localObject5 = (t)((y)localObject4).j();
            t localt = new t(((a.d.w)localObject3).a() + ((t)localObject5).d(), ((a.d.w)localObject3).b() + ((t)localObject5).e(), ((t)localObject5).b(), ((t)localObject5).c());
            localz1.add(new b_(localObject2, i++, localt, (t)localObject5, (byte)2));
            ((y)localObject4).f();
            if (j != 0) {
              break label259;
            }
            if (bool) {
              break label257;
            }
          } while (!bool);
        }
      } while (j != 0);
      ((a.c.w)localObject1).f();
    } while (!bool);
    label262:
    label263:
    localObject1 = this.G.w();
    label441:
    label443:
    do
    {
      do
      {
        if (!((a.c.m)localObject1).e()) {
          break label446;
        }
        localObject2 = ((a.c.m)localObject1).a();
        localz1.add(new b_(localObject2, i++, b((a.c.d)localObject2), (byte)1));
        localz2 = a((a.c.d)localObject2);
        if (((j != 0) || (localz2 != null)) && ((j != 0) || (!localz2.isEmpty())))
        {
          localObject3 = localz2.h();
          do
          {
            if (!((y)localObject3).e()) {
              break;
            }
            localObject4 = (c_)((y)localObject3).j();
            localObject5 = ((c_)localObject4).a(this.G);
            localz1.add(new b_(localObject2, i++, (p)localObject5, (byte)1, (c_)localObject4));
            ((y)localObject3).f();
            if (j != 0) {
              break label443;
            }
            if (bool) {
              break label441;
            }
          } while (!bool);
        }
      } while (j != 0);
      ((a.c.m)localObject1).f();
    } while (!bool);
    label446:
    localObject1 = new e_(true);
    a.d.m.a(localz1, (m.g_)localObject1);
    return localz1;
  }
  
  private n b(a.c.d paramd)
  {
    return new n(this.G.r(paramd), this.G.s(paramd));
  }
  
  private bb e(a.c.e parame)
  {
    bb localbb = new bb(parame);
    a(parame, localbb);
    return localbb;
  }
  
  private static void a(a.c.e parame, bb parambb)
  {
    boolean bool = e.L;
    a.c.w localw = parame.q();
    do
    {
      if (!localw.e()) {
        break;
      }
      a.c.e locale = localw.d();
      parambb.b(locale);
      a(locale, parambb);
      localw.f();
    } while (!bool);
  }
  
  private a.c.d f(a.c.e parame)
  {
    int i = e.M;
    a.c.m localm = parame.m();
    if (i == 0) {
      if (localm.k() > 1) {
        System.out.println("wrong tree structure: node " + parame + " has multiple parents");
      }
    }
    return (i != 0) || (localm.e()) ? localm.a() : null;
  }
  
  public void a(a.c.e parame, x paramx)
  {
    b(parame, paramx);
  }
  
  private double b(a.c.e parame, x paramx)
  {
    int i = e.M;
    boolean bool = e.L;
    double d = this.G.s(parame) * this.G.t(parame);
    a.c.d locald = parame.h();
    do
    {
      if (locald == null) {
        break;
      }
      a.c.e locale = locald.f();
      if (i != 0) {
        break label92;
      }
      d += b(locale, paramx);
      locald = locald.i();
      if (bool) {
        return d;
      }
    } while (!bool);
    if (i == 0) {
      paramx.a(parame, d);
    }
    label92:
    return d;
  }
  
  public void c(a.c.e parame, x paramx)
  {
    b.a(this.G, new bb(parame), paramx);
  }
  
  public a.c.e u()
  {
    return kb.h(this.G);
  }
  
  public boolean b(o paramo)
  {
    int i = e.M;
    if ((i != 0) || (kb.e(paramo))) {
      if (i != 0) {}
    }
    return a.a.m.c(paramo);
  }
  
  static class f_
    implements Comparator, l.j_
  {
    x a;
    x b;
    x c;
    
    public f_(x paramx1, x paramx2, x paramx3)
    {
      this.a = paramx1;
      this.b = paramx2;
      this.c = paramx3;
    }
    
    public int compare(Object paramObject1, Object paramObject2)
    {
      int i = e.M;
      a.c.e locale1 = (a.c.e)paramObject1;
      a.c.e locale2 = (a.c.e)paramObject2;
      if (i == 0)
      {
        if (this.a.getInt(locale1) < this.a.getInt(locale2)) {
          return 1;
        }
        if (i != 0) {}
      }
      else if (this.a.getInt(locale1) > this.a.getInt(locale2))
      {
        return -1;
      }
      if (i == 0) {
        if (a(this.b.getInt(locale1), this.b.getInt(locale2))) {
          return -1;
        }
      }
      if (i == 0) {
        if (a(this.b.getInt(locale2), this.b.getInt(locale1))) {
          return 1;
        }
      }
      if (i == 0)
      {
        if (this.c.getInt(locale1) < this.c.getInt(locale2)) {
          return -1;
        }
        if (i != 0) {}
      }
      else if (this.c.getInt(locale1) > this.c.getInt(locale2))
      {
        return 1;
      }
      return 0;
    }
    
    private boolean a(int paramInt1, int paramInt2)
    {
      int i = e.M;
      if (i == 0) {
        if (paramInt1 < paramInt2)
        {
          if (i == 0) {
            if (paramInt1 > -1)
            {
              if (i == 0) {}
              return 100.0D < paramInt2 - paramInt1;
            }
          }
          if (i == 0) {}
          return paramInt1 + 100.0D < paramInt2;
        }
      }
      return false;
    }
  }
  
  static class c_
  {
    private a.c.d a;
    private a.d.w b;
    private a.d.w c;
    
    c_(a.c.d paramd, a.d.w paramw1, a.d.w paramw2)
    {
      this.a = paramd;
      this.b = paramw1;
      this.c = paramw2;
    }
    
    n a(o paramo)
    {
      a.d.w localw1 = paramo.o(this.a.e());
      a.d.w localw2 = paramo.o(this.a.f());
      n localn = new n(a.d.w.b(localw1, this.b), a.d.w.b(localw2, this.c));
      return localn;
    }
  }
  
  class e_
    implements m.g_
  {
    private boolean a;
    private boolean b;
    
    public e_(boolean paramBoolean)
    {
      this.b = paramBoolean;
      this.a = false;
      if (paramBoolean) {
        d.this.H.clear();
      }
    }
    
    public boolean a()
    {
      return this.a;
    }
    
    private boolean a(d.d_ paramd_)
    {
      if (e.M == 0) {}
      return !d.this.H.containsKey(paramd_);
    }
    
    public void a(Object paramObject1, Object paramObject2)
    {
      int i = e.M;
      boolean bool = e.L;
      d.b_ localb_1 = (d.b_)paramObject1;
      d.b_ localb_2 = (d.b_)paramObject2;
      if (!t.a(localb_1.a(), localb_2.a())) {
        return;
      }
      d.d_ locald_ = new d.d_(d.this, localb_1, localb_2);
      if (i == 0) {
        if (!localb_1.i())
        {
          if (i != 0) {
            break label487;
          }
          if (!localb_2.i()) {
            break label483;
          }
        }
      }
      if (i == 0) {
        if (localb_1.i())
        {
          if (i != 0) {
            break label173;
          }
          if (localb_2.i())
          {
            if (i == 0) {
              if (this.b)
              {
                d.this.H.put(locald_, locald_);
                if ((i == 0) && (!bool)) {
                  return;
                }
              }
            }
            if (i == 0)
            {
              if (!a(locald_)) {
                return;
              }
              this.a = true;
            }
            if ((i == 0) && (!bool)) {
              return;
            }
          }
        }
      }
      label173:
      if (i == 0)
      {
        if (!localb_1.g())
        {
          if (i != 0) {
            break label328;
          }
          if (!localb_2.g()) {
            break label319;
          }
        }
        if (i != 0) {
          break label207;
        }
      }
      label207:
      Object localObject1 = localb_1.g() ? localb_1 : localb_2;
      if (i == 0) {}
      Object localObject2 = localb_1.i() ? localb_1 : localb_2;
      if ((i != 0) || (d.this.c((d.b_)localObject1, (d.b_)localObject2)))
      {
        if (i == 0) {
          if (this.b)
          {
            d.this.H.put(locald_, locald_);
            if ((i == 0) && (!bool)) {
              return;
            }
          }
        }
        if (i == 0)
        {
          if (a(locald_)) {
            this.a = true;
          }
        }
        else
        {
          if (i == 0)
          {
            if (!bool) {
              return;
            }
            label319:
            if (i != 0) {
              break label332;
            }
          }
          label328:
          label332:
          localObject1 = localb_1.i() ? localb_1 : localb_2;
          if (i == 0) {}
          localObject2 = localb_1.i() ? localb_2 : localb_1;
          if ((i != 0) || ((d.this.e(localb_1, localb_2)) || (this.b)))
          {
            n localn1 = (n)((d.b_)localObject2).k();
            if ((i != 0) || (localn1.a(((d.b_)localObject1).k().a())))
            {
              if (i == 0) {
                if (this.b)
                {
                  d.this.H.put(locald_, locald_);
                  if ((i == 0) && (!bool)) {
                    return;
                  }
                }
              }
              if (i == 0)
              {
                if (a(locald_)) {
                  this.a = true;
                }
              }
              else if ((i != 0) || (bool))
              {
                label483:
                label487:
                if (i == 0) {
                  if (localb_1.g())
                  {
                    if (i != 0) {
                      break label626;
                    }
                    if (localb_2.g())
                    {
                      if (((i == 0) && ((!d.this.e(localb_1, localb_2)) && ((i == 0) && (!this.b)))) || ((i == 0) && (!d.this.a(localb_1, localb_2)))) {
                        return;
                      }
                      if (i == 0) {
                        if (this.b)
                        {
                          d.this.H.put(locald_, locald_);
                          if ((i == 0) && (!bool)) {
                            return;
                          }
                        }
                      }
                      if (i == 0)
                      {
                        if (!a(locald_)) {
                          return;
                        }
                        this.a = true;
                      }
                      if ((i == 0) && (!bool)) {
                        return;
                      }
                    }
                  }
                }
                label626:
                if (i == 0) {
                  if (localb_1.h())
                  {
                    if (i != 0) {
                      break label797;
                    }
                    if (localb_2.h())
                    {
                      localObject1 = (a.c.d)localb_1.j();
                      localObject2 = (a.c.d)localb_2.j();
                      if ((localObject1 == localObject2) || ((i == 0) && ((!d.this.e(localb_1, localb_2)) && (!this.b)))) {
                        return;
                      }
                      localn1 = (n)localb_1.k();
                      n localn2 = (n)localb_2.k();
                      if (n.a(localn1, localn2) == null) {
                        return;
                      }
                      if (i == 0) {
                        if (this.b)
                        {
                          d.this.H.put(locald_, locald_);
                          if ((i == 0) && (!bool)) {
                            return;
                          }
                        }
                      }
                      if (i == 0)
                      {
                        if (!a(locald_)) {
                          return;
                        }
                        this.a = true;
                      }
                      if ((i == 0) && (!bool)) {
                        return;
                      }
                    }
                  }
                }
                label797:
                if (i == 0) {
                  if (localb_1.g())
                  {
                    if (i != 0) {
                      break label852;
                    }
                    if (localb_2.h()) {
                      break label843;
                    }
                  }
                }
                if ((i != 0) || (localb_1.h()))
                {
                  if (i == 0)
                  {
                    if (!localb_2.g()) {
                      break label1065;
                    }
                    label843:
                    if (i != 0) {
                      break label864;
                    }
                  }
                  label852:
                  label864:
                  localObject1 = (a.c.e)(localb_1.g() ? localb_1.j() : localb_2.j());
                  if (i == 0) {}
                  localObject2 = (a.c.d)(localb_1.h() ? localb_1.j() : localb_2.j());
                  if ((i == 0) && ((((a.c.d)localObject2).e() == localObject1) || (((a.c.d)localObject2).f() == localObject1))) {
                    return;
                  }
                  if (i == 0) {
                    if (!d.this.e(localb_1, localb_2))
                    {
                      if (i == 0) {
                        if (!this.b) {
                          return;
                        }
                      }
                    }
                    else {
                      if (i != 0) {
                        break label977;
                      }
                    }
                  }
                  label977:
                  localn1 = (n)(localb_1.h() ? localb_1.k() : localb_2.k());
                  if ((i == 0) && (!d.this.a((a.c.e)localObject1, localn1))) {
                    return;
                  }
                  if (i == 0) {
                    if (this.b)
                    {
                      d.this.H.put(locald_, locald_);
                      if ((i == 0) && (!bool)) {
                        return;
                      }
                    }
                  }
                  if (i == 0)
                  {
                    if (!a(locald_)) {
                      return;
                    }
                    this.a = true;
                  }
                  if (!bool) {
                    return;
                  }
                }
                label1065:
                System.out.println("unhandled case detected");
              }
            }
          }
        }
      }
    }
  }
  
  class d_
  {
    d.b_ a;
    d.b_ c;
    
    public d_(d.b_ paramb_1, d.b_ paramb_2)
    {
      this.a = paramb_1;
      this.c = paramb_2;
    }
    
    public boolean equals(Object paramObject)
    {
      int i = e.M;
      if (i == 0) {
        if ((paramObject instanceof d_))
        {
          d_ locald_ = (d_)paramObject;
          if (i == 0) {
            if (d.b_.access$200(this.a) == d.b_.access$200(locald_.a))
            {
              if (i != 0) {
                break label105;
              }
              if (d.b_.access$200(this.c) == d.b_.access$200(locald_.c)) {
                break label104;
              }
            }
          }
          if (i == 0)
          {
            if (d.b_.access$200(this.a) != d.b_.access$200(locald_.c)) {
              break label108;
            }
            if (i != 0) {
              break label105;
            }
          }
          label104:
          label105:
          label108:
          return d.b_.access$200(this.c) == d.b_.access$200(locald_.a);
        }
      }
      return false;
    }
    
    public int hashCode()
    {
      int i = this.a.hashCode();
      int j = this.c.hashCode();
      return i ^ j;
    }
  }
  
  class b_
    implements p
  {
    static final byte a = 0;
    static final byte b = 1;
    static final byte c = 2;
    private Object d;
    private p e;
    private byte f;
    private int g;
    private t h = null;
    private boolean i;
    private d.c_ j = null;
    
    public b_(Object paramObject, int paramInt, p paramp, t paramt, byte paramByte)
    {
      this.g = paramInt;
      this.d = paramObject;
      this.e = paramp;
      if (e.M == 0)
      {
        this.f = paramByte;
        if (paramByte == 1) {}
      }
      else
      {
        this.h = paramt;
      }
    }
    
    public b_(Object paramObject, int paramInt, p paramp, byte paramByte)
    {
      this.g = paramInt;
      this.d = paramObject;
      this.e = paramp;
      this.f = paramByte;
    }
    
    public b_(Object paramObject, int paramInt, p paramp, byte paramByte, d.c_ paramc_)
    {
      this.g = paramInt;
      this.d = paramObject;
      this.e = paramp;
      if (e.M == 0)
      {
        this.f = paramByte;
        if (paramByte != 1) {}
      }
      else
      {
        this.j = paramc_;
      }
    }
    
    public boolean b()
    {
      return this.j != null;
    }
    
    public d.c_ c()
    {
      return this.j;
    }
    
    public void a(boolean paramBoolean)
    {
      this.i = paramBoolean;
    }
    
    public boolean d()
    {
      return this.i;
    }
    
    public boolean e()
    {
      int k = e.M;
      if ((k != 0) || (this.i)) {
        if (k != 0) {}
      }
      return this.f == 0;
    }
    
    public void a(t paramt)
    {
      this.h = paramt;
    }
    
    public void a(p paramp)
    {
      this.e = paramp;
    }
    
    public t f()
    {
      return this.h;
    }
    
    public boolean g()
    {
      if (e.M == 0) {}
      return this.f == 0;
    }
    
    public boolean h()
    {
      if (e.M == 0) {}
      return this.f == 1;
    }
    
    public boolean i()
    {
      if (e.M == 0) {}
      return this.f == 2;
    }
    
    public Object j()
    {
      return this.d;
    }
    
    public p k()
    {
      return this.e;
    }
    
    public byte l()
    {
      return this.f;
    }
    
    public t a()
    {
      return this.e.a();
    }
    
    public boolean equals(Object paramObject)
    {
      int k = e.M;
      if (k == 0) {
        if ((paramObject instanceof b_))
        {
          b_ localb_ = (b_)paramObject;
          if (k == 0) {}
          return localb_.g == this.g;
        }
      }
      return false;
    }
    
    public int hashCode()
    {
      return this.g;
    }
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.f.a.d

 * JD-Core Version:    0.7.0.1

 */